﻿
Ext.ns('Ext.pm');
Ext.pm.ChargeGrid = function(config){
	ChargeGrid.superclass.constructor.call(this,config);
}

Ext.pm.ChargeGrid = Ext.extend(Ext.grid.GridPanel,{
	initialized:false,
	store : new  MyStore(),
	loadMask : true,
	initComponent:function(){
		this.cm = new Ext.grid.ColumnModel([ new Ext.grid.RowNumberer(), {
				header : '项目编号',
				dataIndex : 'projectnumber',
				width : 70,
				sortable : true
			}, {
				header : '项目名称',
				dataIndex : 'projectname',
				width : 70,
				sortable : true
			}, {
				header : '承担单位',
				dataIndex : 'undertakeunit',
				width : 70,
				sortable : true
			}, {
				header : '项目负责人',
				dataIndex : 'projectdirector',
				width : 70,
				sortable : true
			}, {
				header : '是否已收费',
				dataIndex : 'whethercharges',
				width : 70,
				renderer : function(value){
					var a="";
					if(value == 0){
						a = "否";
					}else
						a = '是';
					return a;
			}
			}, {
				header : '收费金额',
				dataIndex : 'chargemoney',
				width : 70,
				sortable : true,
				locked : false
			}, {
				header : '收费时间',
				dataIndex : 'chargeabledate',
				width : 70,
				sortable : true,
				locked : false,
				renderer:function(v, cellmeta, record, rowIndex, columnIndex, store){
					var JsonDateValue;
			        if (Ext.isEmpty(v))
			        	return ' ';
			        else if (Ext.isEmpty(v.time))
			        	JsonDateValue = new Date(v);
			        else
			        	JsonDateValue = new Date(v.time);
			        return JsonDateValue.format('Y-m-d');
				}
			}, {
				header : '收费形式',
				dataIndex : 'chargeableform',
				width : 70,
				renderer : function(value){
					var a = "";
					return value;
			}
			},{
				header : '开发票标记',
				dataIndex : 'invoicemark',
				width : 70,
				renderer : function(value){
					var a = "";
					if(value ==0){
						a = '未开发票';
					}else
						a = '已开发票';
					return a;
			}
			}, {
				header : '发票号',
				dataIndex : 'marknumber',
				width : 70,
				sortable : true,
				locked : false
			},  {
				header : '收费备注',
				dataIndex : 'feenote',
				width : 70,
				sortable : true,
				locked : false
			}, {
				header : '操作',
				dataIndex : 'projectnumber',
				width : 70,
				renderer:function(value, cellmeta, record, rowIndex, columnIndex, store){
					var brow="chargeOperation('"+record.get('projectservicefeeid')
							+"','"+record.get('projectnumber')
							+"','"+record.get('projectname')
							+"','"+record.get('undertakeunit')
							+"','"+record.get('projectdirector')
							+"','"+record.get('whethercharges')
							+"','"+record.get('chargemoney')
							+"','"+record.get('chargeabledate')
							+"','"+record.get('chargeableform')
							+"','"+record.get('invoicemark')
							+"','"+record.get('marknumber')
							+"','"+record.get('feenote')+"');return false;";
					var b = ' <a  onclick="'+brow+'">操作</a>&nbsp;';
					
					return b;
			}
			} ]
		);
		
//		this.store = new MyStore();
		this.tbar = [{
			xtype:'label',
			text:'编号查询'
		},{
			xtype:'textfield',
			fieldLabel : '编号查询',
			id:'cm__numbercheck'
		},{
			xtype:'label',
			text:'名称:  '
		},{
			xtype:'textfield',
			fieldLabel : '编号查询',
			id:'cm__namecheck'
		},{
			xtype:'button',
			text:'查询',
			handler : function(b,e){
				var a = b.findParentBy(function(ct, cmp) { 
					return (ct instanceof Ext.grid.GridPanel) ? true : false; 
					});
				a.store.load({
					params:{
					start:0,
					limit: 30,
					numberQuery : a.getTopToolbar().findById('cm__numbercheck').getValue(),
					nameQuery : a.getTopToolbar().findById('cm__namecheck').getValue()
				}
				});
		}
			
		}];
		this.bbar = new Ext.PagingToolbar({
			pageSize : 20,
			store : this.store,
			displayInfo : true,
			displayMsg : '显示 {0}-{1}条 / 共 {2} 条',
			emptyMsg : "无数据。",
			plugins        : [new Ext.ux.PageSizePlugin()],
			items : ['-']
		});
		Ext.pm.ChargeGrid.superclass.initComponent.call(this);
	}
})


function chargeOperation(id,number,name,unit,director,charges,money,date,form,mark,inumber,note){
	var a = Ext.getCmp('chargeWindow');
	if ( a == null ){
		a = new Ext.cm.ChargeWindow({
			id : 'chargewindow'
		});
	}
	a.updatePanel.findById(a.id+'projectservicefeeid').setValue(id);
	a.updatePanel.findById(a.id+'proejectnumber').setValue(number);
	a.updatePanel.findById(a.id+'projectname').setValue(name);
	a.updatePanel.findById(a.id+'undertakeunitname').setValue(unit);
	a.updatePanel.findById(a.id+'projectdirectorname').setValue(director);
	a.updatePanel.findById(a.id+'whethercharges').setValue(charges);
	a.updatePanel.findById(a.id+'chargemoney').setValue(money);
	a.updatePanel.findById(a.id+'chargeabledate').setValue(date);
	a.updatePanel.findById(a.id+'chargeableform').setValue(form);
	a.updatePanel.findById(a.id+'invoicemark').setValue(mark);
	a.updatePanel.findById(a.id+'marknumber').setValue(inumber);
	a.updatePanel.findById(a.id+'feenote').setValue(note);
	a.show();
}
